home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1993 July / InfoMagic USENET CD-ROM July 1993.ISO / sources / misc / volume7 / zooman.man < prev   
Encoding:
Text File  |  1989-07-27  |  52.9 KB  |  1,582 lines

  1. Newsgroups: comp.sources.misc
  2. subject: v07i103: zoo 2.01 enhanced user manual, nroff/troff
  3. from: allbery@uunet.UU.NET (Brandon S. Allbery - comp.sources.misc)
  4. Reply-To: dhesi@bsu-cs.bsu.edu (Rahul Dhesi)
  5.  
  6. Posting-number: Volume 7, Issue 103
  7. Submitted-by: dhesi@bsu-cs.bsu.edu (Rahul Dhesi)
  8. Archive-name: zooman.man
  9.  
  10. The zoo archiver version 2.01 appeared in comp.sources.misc in early
  11. 1989.  Here is an enhanced user manual for it written by Bill
  12. Davidsen.  This posting contains the version suitable for nroff/troff.
  13. The next one contains the formatted manual.
  14.  
  15. Rahul Dhesi <dhesi@bsu-cs.bsu.edu>
  16. UUCP:    ...!{iuvax,pur-ee}!bsu-cs!dhesi
  17.  
  18. Checksum: 3575537122 (verify with "brik -cv")
  19.  
  20. #! /bin/sh
  21. # This is a shell archive, meaning:
  22. # 1. Remove everything above the #! /bin/sh line.
  23. # 2. Save the resulting text in a file.
  24. # 3. Execute the file with /bin/sh (not csh) to create:
  25. #    uguide.n
  26. # This archive created: Tue Jul 25 21:56:21 1989
  27. export PATH; PATH=/bin:/usr/bin:$PATH
  28. echo shar: "extracting 'uguide.n'" '(51469 characters)'
  29. if test -f 'uguide.n'
  30. then
  31.     echo shar: "will not over-write existing file 'uguide.n'"
  32. else
  33. sed 's/^X//' << \SHAR_EOF > 'uguide.n'
  34. X.PH
  35. X\" this guide should be runoff using the mm macros
  36. X\"
  37. X\" set the T/C depth
  38. X.nr Cl 3
  39. X\" set the paragraph indent
  40. X.nr Pi 2
  41. X\" begin section macro
  42. X.de BS
  43. X.bp
  44. X.PF "''\\$1''"
  45. X.OF "'rev 1.19 - 11/9/88'For zoo 2.01'Page %'"
  46. X.EF "'page %'For zoo 2.01'rev 1.19 - 11/9/88'"
  47. X..
  48. X.ls 2
  49. X\" This is the way to highlight the name zoo, when in text
  50. X.ds z \\fIzoo\\fR
  51. X.if n .ds co "(c)
  52. X\" This is how to call in constant width fonts on troff
  53. X.if t .cs H 22
  54. X.de CW
  55. X.ie '\\$1'' .ft H
  56. X.el \\fH\\$1\\fR
  57. X..
  58. X.de CE
  59. X.ft R
  60. X..
  61. X\&
  62. X.sp 3i
  63. X.ce 4
  64. X\s+6The \fIzoo\fR Archiver
  65. XUser's Guide\s-6
  66. XBill Davidsen
  67. X.sp
  68. Xrev 1.19, modified 11/9/88
  69. X.sp 1i
  70. X.ce
  71. XCopyright \*(co 1988 by Bill Davidsen, all rights reserved.
  72. X.bp
  73. X.P
  74. XThis document may be distributed unmodified by anyone for any purpose.
  75. XCopies of this guide may be freely duplicated and distributed in any
  76. Xform but may not be sold at a profit.
  77. X.sp
  78. X.B Trademarks
  79. X.P
  80. XMS-DOS is a trademark of Microsoft, UNIX is a trademark of AT&T, and
  81. XARC is a trademark of System Enhancement Associates. VMS and VAX are
  82. Xtrademarks of Digital Equipment Corp.
  83. X.de PX        \" set binding margins here
  84. X.if o .po 1i
  85. X.if e .po .5i
  86. X..
  87. X.pn 1
  88. X.BS "Introduction
  89. X.H 1 Introduction
  90. X.H 2 "What's an archiver, and why do I want one?
  91. X.P
  92. X.IX "archive
  93. X.IX "introduction
  94. X.IX "MS-DOS
  95. X.IX "UNIX
  96. X.IX "compress
  97. X.IX "SQ
  98. X.IX "LBR
  99. XAn archive program is one which performs two functions; to compress the
  100. Xdata for a file, such as MS-DOS\*(Tm SQ, or UNIX\*(Tm compress, and to
  101. Xallow storage of a number of files in a single file, such as MS-DOS LBR
  102. Xor UNIX tar or cpio.
  103. X.P
  104. XBecause many files have been stored as a single file they can be easily
  105. Xmoved or backed up to another disk or tape. The compressed files take
  106. Xless space on disk than the originals, and access to other files may be
  107. Xfaster since the directory will be less cluttered.
  108. X.H 2 "What's zoo?
  109. X.P
  110. X\*z is an archive program written by Rahul Dhesi, which offers all of
  111. Xthese benefits, and which also offers your choice of a \fInovice\fR
  112. Xor an \fIexpert\fR user interface. Additional support programs are
  113. Xavailable for MS-DOS, UNIX, and several other systems.
  114. X.H 2 "How to use this guide
  115. X.P
  116. XThe User's Guide is not intended to replace the manual. The manual is
  117. Xconcise and complete, but not in many cases easy to use and understand.
  118. XThe User's Guide is intended to be easy to use and understand, with
  119. Xexamples allowing a new user to learn the use of \*z without
  120. Xinstruction.
  121. X.P
  122. XThis guide is organized by function. If you want to add a file to an
  123. Xarchive, for instance, you go to the "add file" section and read about
  124. Xhow to do it. The simplest case is presented first, followed by
  125. Xdiscussion of options and related topics.
  126. X.ne 6
  127. X.P
  128. X\*z provides the following capabilities:
  129. X\fBadd\fR files to an archive, \fBextract\fR files from an archive,
  130. X\fBlist\f the files in an archive,
  131. X\fBdelete\fR files from an existing archive,
  132. Xand \fBreplace\fR old files with a newer version. All of these basic
  133. Xfunctions are available with options.
  134. XDetails on how to use each of these follows.
  135. X.H 1 "Using \*z
  136. X.P
  137. X.IX "novice commands
  138. X.IX "expert commands
  139. X\*z has two sets of commands, the \fInovice\fR commands and
  140. X\fIexpert\fR commands. The \fInovice\fR commands are easy to learn and
  141. Xuse, and allow you to do the common archiver commands. The \fIexpert\fR
  142. Xcommands are somewhat more complex to use, and provide access to all of
  143. Xthe capabilities of \*z, particularly those which are not available in
  144. Xmost other archivers. Note that you can get a reminder of the novice
  145. Xcommands just by typing the \*z command with no arguments, or the
  146. Xexpert commands by typing "zoo\ h".
  147. X.H 2 "Filenames
  148. X.H 3 "The name of the archive file
  149. X.P
  150. X.IX "archive filename
  151. XSince \*z is going to take a number of files and place them in one
  152. Xarchive file, there the name of the archive file must be specified. \*z
  153. Xarchives are usually named something.zoo, just as ARC\*(Tm files are named
  154. Xsomething.arc, etc. However, the archives may have other names,
  155. Xdepending on the operating system. If the archive name specified by the
  156. Xuser contains at least one dot (.) the suffix zoo will not be added.
  157. X.P
  158. XWhen you provide the name of an archive on the command line, if the
  159. Xname does not contain a dot the extension ".zoo" will be added. This
  160. Xmeans that if you use the name "docs" the actual archive will be named
  161. X"docs.zoo", while if you use the name "my.doc" that will be the actual
  162. Xfilename. Using names which don't end in .zoo may cause you confusion,
  163. Xand should be done only when you will still be able to identify the file
  164. Xas a \*z archive.
  165. X.H 3 "The names of files in the archive
  166. X.P
  167. X.IX "filename limitations
  168. X.IX "limitations, filename
  169. XThe names of files in an archive are limited only by the operating
  170. Xsystem. Under MS-DOS the names are eight characters for the name,
  171. Xfollowed by a dot, followed by three characters for the extension.
  172. XUnder VMS\*(Tm the name and extension may each be up to 32 characters
  173. Xlong, and under UNIX the names may be as long as the system allows
  174. X(always at least 14 characters) and may be any legal name. Other
  175. Xoperating systems may have other rules for filenames. In general files
  176. Xwith names consisting of not more than 8 characters, a dot, and not
  177. Xmore than three characters are supported by most common operating
  178. Xsystems.
  179. X.H 3 "Treatment of wildcards
  180. X.P
  181. X.IX "wildcards
  182. XIf you are familiar with the way the UNIX operating system expands
  183. Xwildcard names, you understand how zoo treats wildcards. For MS-DOS
  184. Xusers the action is most similar to the DIR command, rather than the
  185. XCOPY usage.
  186. X.ne 6
  187. XIf you type "a*" it means "all names beginning with a" even
  188. Xif they have an extension. Also, the construct "*a" will match all
  189. Xfilenames ending in "a", such as "data" or "left.pa". 
  190. XFor a complete discussion see the manual.
  191. X.BS "zoo commands
  192. X.H 1 "Common zoo operations
  193. X.H 2 "Adding data to an archive
  194. X.P
  195. X.IX "adding file to an archive
  196. X.IX "-add command, add files
  197. X.IX "a command, add files
  198. XWhen you add a file to an archive, a copy of the file is placed in the
  199. Xarchive in a compressed format. The original file is left unchanged for
  200. Xother use. The simplest way to add data to an archive is with the
  201. Xnovice command:
  202. X.ti +.5i
  203. X.CW "zoo -add zoofile myfile
  204. X.sp
  205. XWhich compresses the file \fImyfile\fR and adds it to \fIzoofile.zoo\fR.
  206. XYou can have several files named on the command line, either explicitly
  207. Xor with wildcards.
  208. X.DS
  209. X.nf
  210. XAdd files examples:
  211. X.in +.5i
  212. X.CW "zoo -add zoofile myfile.dat myfile.doc
  213. X.sp
  214. X.CW "zoo a zoofile myfile.*
  215. X.DE
  216. X.P
  217. XNote that if there is already a file in the archive having the same
  218. Xname as a file you are adding, it will be replaced by the new file. If
  219. Xyou want to prevent this, there is an expert option 'n' which says only
  220. Xadd files which are not in the archive already. 
  221. X.DS
  222. XFor example the two command sequence:
  223. X.in +.5i
  224. X.nf
  225. X.CW
  226. Xzoo a arch myfile.src
  227. Xzoo an arch myfile.dat myfile.src myfile.doc
  228. X.CE
  229. X.DE
  230. X.P
  231. X.IX "n option, add new files only
  232. XNote that the file "myfile.src" was added to the archive with the first
  233. Xcommand, and therefore will not be added by the second.
  234. X.H 3 "Updating files in an archive
  235. X.P
  236. X.IX "updating files
  237. X.IX "-freshen command, update existing files
  238. X.IX "u option, update existing files
  239. XThere may be times when you want to be sure the archive contains the
  240. Xlatest versions of all the files, without adding any new files. This may
  241. Xbe done with the '-freshen' novice command, or the
  242. Xoption, 'u', controls this in the expert mode.
  243. X.DS
  244. XYou may enter the command as either:
  245. X.ti +.5i
  246. X.CW "zoo au arch myfiles.*
  247. X.br
  248. X- or -
  249. X.ti +.5i
  250. X.CW "zoo -freshen arch myfiles.*
  251. X.DE
  252. X.sp
  253. Xwhere any file which had been changed would be replaced with the newer
  254. Xversion, while any files which were not in the archive would be ignored.
  255. X.H 3 "Adding only new files to an archive
  256. X.P
  257. X.IX "adding new files only
  258. X.IX "new files, adding
  259. X.IX "n option, add new files
  260. XIf you want to add some new files to an archive, but don't want to
  261. Xchange the existing files in the archive, even if they are not the
  262. Xlatest version, you can specify leaving the existing files unchanged by
  263. Xuse of the 'n' option in expert mode.
  264. X.DS
  265. XIn expert mode only:
  266. X.ti +.5i
  267. X.CW "zoo an arch myfiles.*
  268. X.DE
  269. Xwill do just that. If a file is in the archive it is not changed, but if
  270. Xit's not in the archive it will be added.
  271. X.H 3 "Bringing an archive up to date
  272. X.P
  273. X.IX "-update command, add new or changed files
  274. X.IX "aun command, add new or changed files
  275. XWhen keeping the parts of a package in a zoo archive, one of the common
  276. Xoperations is to move all newly created files into the archive, and to
  277. Xupdate the files which are in the archive but have been modified since
  278. Xthey were saved.
  279. X.DS
  280. XThe easiest way is with the novice command:
  281. X.ti +.5i
  282. X.CW "zoo -update arch myfiles.*
  283. X.br
  284. Xand can also be done with the expert command:
  285. X.ti +.5i
  286. X.CW "zoo aun arch myfiles.*
  287. X.DE
  288. X.P
  289. X.IX "-freshen
  290. X.IX "-update
  291. XNote the difference between '-freshen' and '-update'. The freshen
  292. Xcommand does not add new files to the archive, it just insures that the
  293. Xfile already in the archive are the latest versions. The '-update'
  294. Xcommand makes sure that the archive contains all of the files you need.
  295. X.P
  296. XThe reason for not using update in all cases is that you may have a lot
  297. Xof files with unrelated names in a directory, and want to save only a
  298. Xfew. The freshen command allows you to specify all the files in the
  299. Xdirectory, and have \*z select those which should be saved.
  300. X.DS
  301. XTo do this you can type:
  302. X.ti +.5i
  303. X.CW "zoo -freshen arch *
  304. X.DE
  305. X.H 3 "Moving files into an archive
  306. X.P
  307. X.IX "-move command, move files into archive
  308. X.IX "M option, move files into archive
  309. X.IX "delete after archiving
  310. XSince one common reason for using an archive is to save space,
  311. Xfrequently you will want to put files into a archive, and then delete
  312. Xthe original, full size, files.
  313. X.DS
  314. XThe novice command to do this is:
  315. X.ti +.5i
  316. X.CW "zoo -move arch file1 file2
  317. X.br
  318. Xor using the the 'M' option to the 'a' expert command:
  319. X.ti +.5i
  320. X.CW "zoo aM arch file1 file2
  321. X.DE
  322. XIn either case the original files will not be deleted until \fIall\fR
  323. Xfiles have been added to the archive and the archive has been closed.
  324. X.H 2 "Listing the archive contents
  325. X.P
  326. XA \*z archive may be listed, giving the contents of the archive with
  327. Xvarious detail and options. A complete list of options is found in the
  328. XUser's Manual.
  329. X.H 3 "Getting a default listing
  330. X.DS
  331. X.IX "-list command, default format file listing
  332. XThe common listing is done by:
  333. X.ti +.5i
  334. X.CW "zoo -list arch
  335. X.nf
  336. X.sp
  337. XWhich might produce a listing like:
  338. X.sp
  339. X.in +.5i
  340. X.CW
  341. XArchive FIZsim.zoo:
  342. XLength    CF  Size Now  Date      Time
  343. X--------  --- --------  --------- --------
  344. X    3849  43%     2211   3 Feb 88 21:55:56   69e7   fiz.1
  345. X    6864  48%     3563   3 Feb 88 21:52:16   d14e   fiz.c
  346. X--------  --- --------  --------- --------
  347. X   10713  46%     5774     2 files
  348. X.CE
  349. X.DE
  350. X.P
  351. X.IX "listing details
  352. X.IX "reading a listing
  353. XLet's look at the listing. The first line is the name of the archive,
  354. Xfollowed by the line giving the headers for all of the columns. The
  355. Xfirst column contains the original length of the file before
  356. Xcompression, the second the percent of compression, and the third the
  357. Xsize of the file in the archive. Remember that the checksum, date, and
  358. Xthe filename are there, too.
  359. X.P
  360. XColumn four is the date when the file was last modified, and five is the
  361. Xtime. The sixth column contains the checksum, discussed in the concepts
  362. Xsection. Finally the name of the file is displayed, either as just a
  363. Xfilename or as a complete name if a subdirectory was specified when the
  364. Xfile was saved.
  365. X.P
  366. X.IX "totals line
  367. XThe totals line gives the total of all file sizes, useful when you check
  368. Xto see if you have room to unpack, the average percent compression, and
  369. Xthe compressed file size. At the end of the totals is the number of
  370. Xfiles displayed. Remember that the file count is files displayed, and
  371. Xmay not include all of the files in the archive (see the concepts
  372. Xsection on deleted files and generations).
  373. X.H 3 "list files, expert command
  374. X.P
  375. X.IX "l command, list archive contents
  376. X.IX "f option, fast listing
  377. X.IX "q option, list without headings
  378. X.IX "headings, list without, q option
  379. XThe expert form of the list command allows a short form of the listing,
  380. Xhaving no checksum information displayed. It is otherwise identical to
  381. Xthe the display produced by the -list command. If the 'f' option is
  382. Xused, only the filenames are displayed, with several filenames on a
  383. Xline. If you use the 'q' (quiet) option, all of the headings and totals
  384. Xare deleted as well.
  385. X.DS
  386. XUsing an archive with a number of files, we see this.
  387. X.nf
  388. X.sp
  389. X.in +.5i
  390. X.CW
  391. XArchive FIZbig.zoo:
  392. XLength    CF  Size Now  Date      Time
  393. X--------  --- --------  --------- --------
  394. X     455   4%      438  17 Aug 88 14:12:36     addbfcrc.o
  395. X    1280  24%      970  17 Aug 88 14:12:52     addfname.o
  396. X    1069  16%      900  17 Aug 88 14:13:02     basename.o
  397. X    3509  26%     2611  17 Aug 88 14:13:28     comment.o
  398. X     814   0%      814  17 Aug 88 14:13:34     crcdefs.o
  399. X    3655  26%     2717  17 Aug 88 14:22:02     fiz.o
  400. X     792  13%      688  17 Aug 88 14:13:44     getfile.o
  401. X    2465  20%     1972  17 Aug 88 14:14:02     lzc.o
  402. X    2543  18%     2082  17 Aug 88 14:14:22     lzd.o
  403. X--------  --- --------  --------- --------
  404. X   16582  20%    13192     9 files
  405. X.CE
  406. X.DE
  407. X.DS
  408. X.nf
  409. X.sp
  410. XBy using the 'f' option we get:
  411. X.sp
  412. X.in +.5i
  413. X.CW
  414. XArchive FIZbig.zoo:
  415. Xaddbfcrc.o      addfname.o      basename.o      comment.o       crcdefs.o
  416. Xfiz.o           getfile.o       lzc.o           lzd.o           
  417. X.CE
  418. X.DE
  419. X.sp
  420. X.DS
  421. X.nf
  422. XIf we add the 'q' option to delete the summary:
  423. X.sp
  424. X.in +.5i
  425. X.CW
  426. Xaddbfcrc.o      addfname.o      basename.o      comment.o       crcdefs.o
  427. Xfiz.o           getfile.o       lzc.o           lzd.o           
  428. X.CE
  429. X.DE
  430. X.P
  431. XYou may also want to read the section on advanced listing, which
  432. Xincludes a section on keeping track of several archive, including how to
  433. Xbuild a rudimentary database of which files are in which archives.
  434. X.H 2 "Extracting files from your archive
  435. X.H 3 "Unpacking an entire archive
  436. X.P
  437. X.IX "-extract command, extract for archive
  438. X.IX "x command, extract from archive
  439. X.IX "extract file from archive
  440. XIf you want to extract all of the files in an archive to their original
  441. Xsize and date, you can use the novice '-extract' command, or the expert
  442. X'x' command.
  443. X.DS
  444. X.nf
  445. XNovice and expert unpack archive:
  446. X.in +.5i
  447. X.CW "zoo -extract arch
  448. X.sp
  449. X.CW "zoo x arch
  450. X.DE
  451. XIn both cases all files will be extracted.
  452. X.H 3 "Unpacking selected files from an archive
  453. X.P
  454. X.IX "extracting selected files
  455. XIf you wish to extract a single file from an archive, you simply add the
  456. Xfile name to the command line after the archive name. The effect is
  457. Xidentical.
  458. X.DS
  459. X.nf
  460. XExtract individual file or files
  461. X.in +.5i
  462. X.CW
  463. Xzoo -extract arch myfile.3
  464. X.sp
  465. Xzoo x arch myfile.3
  466. X.sp
  467. Xzoo x arch myfile.3 myfile.4
  468. X.sp
  469. Xzoo x arch *.bas
  470. X.CE
  471. X.DE
  472. XThe first two examples do the same thing, using the novice and expert
  473. Xcommands respectively. In the third example several of files are being
  474. Xextracted at the same time. The use of wildcards is also permitted, as
  475. Xshown in the fourth example. this will extract all BASIC files from the
  476. Xarchive. The example is for MS-DOS, UNIX and other users should see the
  477. Xdiscussion of wildcards and the manual for additional discussion of
  478. Xthis.
  479. X.H 2 "Deleting files
  480. X.P
  481. X.IX "deleting files
  482. XWhen a file is "deleted" from an archive, it is marked as no longer
  483. Xwanted. If you are using the novice commands the file will be
  484. Xphysically removed from the archive after the delete command has been
  485. Xexecuted, and a copy of the archive with the file marked deleted but
  486. Xstill physically in the archive will be called something.bak. If your
  487. Xarchive were called docs.zoo, the backup would be called docs.bak. The
  488. Xexpert commands allow you to leave deleted files in the archive, until
  489. Xyou explicitly remove them with the pack command.
  490. X.IX "-delete command, delete files
  491. X.IX "D command, delete files
  492. XFiles are deleted from an archive using the "-delete" novice command or
  493. Xthe "D" expert command.
  494. X.DS
  495. X.nf
  496. XConsider the archive below:
  497. X.sp
  498. X.in +.5i
  499. X.CW
  500. XArchive FIZ.zoo:
  501. XLength    CF  Size Now  Date      Time
  502. X--------  --- --------  --------- --------
  503. X    3849  43%     2211   3 Feb 88 21:55:56     fiz.1
  504. X    6864  48%     3563   3 Feb 88 21:52:16     fiz.c
  505. X    3849  43%     2211   6 Sep 88 09:33:54     t1/fiz.1
  506. X--------  --- --------  --------- --------
  507. X   14562  45%     7985     3 files
  508. X.CE
  509. X.DE
  510. X.DS
  511. X.nf
  512. XIf you delete a file and list using the novice command:
  513. X.sp
  514. X.CW
  515. X.in +.5i
  516. Xzoo -delete FIZ fiz.c
  517. Xzoo l FIZ
  518. X.sp
  519. XArchive FIZ.zoo:
  520. XLength    CF  Size Now  Date      Time
  521. X--------  --- --------  --------- --------
  522. X    3849  43%     2211   3 Feb 88 21:55:56     fiz.1
  523. X    3849  43%     2211   6 Sep 88 09:33:54     t1/fiz.1
  524. X--------  --- --------  --------- --------
  525. X    7698  43%     4422     2 files
  526. X.CE
  527. X.DE
  528. X.DS
  529. X.nf
  530. XWhile if I use the expert commands:
  531. X.CW
  532. X.sp
  533. X.in +.5i
  534. Xzoo D FIZ fiz.c
  535. Xzoo l FIZ
  536. X.sp
  537. XArchive FIZ.zoo:
  538. XLength    CF  Size Now  Date      Time
  539. X--------  --- --------  --------- --------
  540. X    3849  43%     2211   3 Feb 88 21:55:56     fiz.1
  541. X    3849  43%     2211   6 Sep 88 09:33:54     t1/fiz.1
  542. X--------  --- --------  --------- --------
  543. X    7698  43%     4422     2 files
  544. X------------
  545. XThere is 1 deleted file.
  546. X.CE
  547. X.DE
  548. X.P
  549. XIn addition to the explicit delete command, files are deleted when
  550. Xoverwritten with various forms of the add, freshen, and update
  551. Xcommands.
  552. X.BS "Advanced features and commands
  553. X.IX "advanced concepts
  554. X.H 1 "Other concepts
  555. X.H 2 "Packing the archive and deleted files
  556. X.P
  557. X.IX "packing archives
  558. XWhen a file in an archive is replaced by a newer version of the file, or
  559. Xanother file by the same name, the old version is marked "deleted," but
  560. Xis still in the archive.
  561. X.DS
  562. X.IX "d option, list deleted files
  563. XYou can see deleted files by:
  564. X.ti +.5i
  565. X.CW "zoo ld arch
  566. X.DE
  567. Xwhich will list the contents of arch.zoo including deleted files. \*z
  568. Xhas a number of commands and option which allow you to extract deleted
  569. Xfiles. The better way to access old versions is to use "generations,"
  570. Xdiscussed in the following section.
  571. X.P
  572. XThe deleted files make the archive larger, and therefore should be
  573. Xremoved when you are sure you no longer need them. Since packing the
  574. Xarchive takes time, you may want to perform all of the add and delete
  575. Xcommands on an archive, then pack it.
  576. X.P
  577. X.IX "deleted files, novice packing
  578. XWhen using the novice commands the archive is packed after every
  579. Xoperation which produces deleted files. The old archive with the deleted
  580. Xfiles is saved as file.bak. The backup name is formed by deleting the
  581. Xlast (rightmost) portion of the name and adding .bak. This means that
  582. X"myfile.zoo" would have a backup called "myfile.bak", and "my.test.file"
  583. Xwould have a backup names "my.test.bak". Obviously systems which only
  584. Xallow one '.' in a name don't have all of the forms.
  585. X.P
  586. X.IX "P command, pack archive
  587. X.IX "P option, pack after executing command
  588. XWhile the novice commands pack the file automatically, the expert
  589. Xcommands allow you to control when you will pack the archive. This is
  590. Xdone by the 'P' command, or the 'P' option to most other commands which
  591. Xmay delete files.
  592. X.DS
  593. XExample - add files and pack:
  594. X.ti +.5i
  595. X.CW "zoo aP arch file1 file2
  596. X.sp
  597. XExample - delete files and pack:
  598. X.ti +.5i
  599. X.CW "zoo dP arch part1.old
  600. X.sp
  601. XExample - update archive and pack:
  602. X.ti +.5i
  603. X.CW "zoo aunP arch mystuff.*
  604. X.br
  605. Xor, since the novice commands pack every time
  606. X.ti +.5i
  607. X.CW "zoo -update arch mystuff.*
  608. X.DE
  609. X.H 2 "Generations
  610. X.P
  611. X.IX "generations
  612. XThere are times when you might want to save an old version of a file,
  613. Xeven though you are working with a newer version. This allows you to
  614. X"fall back" if you find a problem. Rather than using the term 'version,'
  615. X.IX "VMS
  616. X\*z uses the VMS term 'generations.' Normally only one generation of a
  617. Xfile is saved in an archive.
  618. X.P
  619. X.IX "generations, enabling
  620. X.IX "+ option, enable generations
  621. XTo allow generations to be used with an archive, first they must be
  622. Xenabled for the archive. This is usually done when the archive is
  623. Xcreated, by adding the option '+' to the 'a' command. To determine how
  624. Xmany generations are to be saved, the "generation limit" must be set. If
  625. Xyou want to save just the version of a file previous to the current
  626. Xversion, you can set the limit to one. If you want the last four
  627. Xversions, the generation limit should be four, etc.
  628. X.P
  629. X.IX "generation limit setting
  630. XThe limit may be set using one of two methods, or both if needed. The
  631. Xfirst is to set the limit on the entire archive. For instance, if you
  632. Xset the archive limit to three, the current version and two most recent
  633. Xversions of each file will be saved.
  634. X.DS
  635. X.nf
  636. XCreate the file with generations enabled:
  637. X.ti +.5i
  638. X.CW "zoo a+ arch file1 file2
  639. X.sp
  640. XSet the limit for the archive to three:
  641. X.ti +.5i
  642. X.CW "zoo glA=3 arch
  643. X.DE
  644. XNow every time you save a file, up to two previous versions will be
  645. Xsaved. If there are already three versions saved, the oldest version
  646. Xwill be deleted. Look at the listing of a archive which has multiple
  647. Xversions saved.
  648. X.DS
  649. X.nf
  650. XSample of an archive with generations:
  651. X.sp
  652. X.in +.5i
  653. X.CW
  654. XArchive FIZ.zoo:
  655. XLength    CF  Size Now  Date      Time
  656. X--------  --- --------  --------- --------
  657. X    3849  43%     2211   3 Feb 88 21:55:56     fiz.1;1
  658. X      29   0%       29   2 Sep 88 17:31:16     xxx;2
  659. X      29   0%       29   2 Sep 88 17:32:06     xxx;3
  660. X      29   0%       29   2 Sep 88 17:32:42     xxx;4
  661. X--------  --- --------  --------- --------
  662. X    3936  42%     2298     4 files
  663. X------------
  664. XThere is 1 deleted file.
  665. X.CE
  666. X.DE
  667. X.P
  668. XNote that there are three different version of the file "xxx" in the
  669. Xarchive. Also note that there is one deleted file. This happens to be
  670. Xthe first version of "xxx" which was deleted when version four was
  671. Xadded.
  672. X.P
  673. X.IX "generations, listing
  674. XNow, what if you want generations on just one file, or different limits
  675. Xon some files? In that case you can set a limit on any file or group of
  676. Xfiles which will override the limit set on the archive. You may also
  677. Xdisplay the limit using the 'g' option for list.
  678. X.P
  679. XHere's an example based on the previous archive. What you see is the
  680. Xlist with generation information, the command to change it, adding a new
  681. Xfile, and the listing after the file has been added.
  682. X.DS
  683. X.nf
  684. X.in +1i
  685. X.ti -1i
  686. XAdd the next file
  687. X.ti -.5i
  688. X.CW
  689. Xzoo a FIZ fiz.1
  690. XZoo:  fiz.1 --  (43%) added
  691. X.CE
  692. X.sp
  693. X.ti -1i
  694. XReset the generation limit for that file
  695. X.ti -.5i
  696. X.CW
  697. Xzoo gl=1 FIZ fiz.1
  698. XZoo:  fiz.1;1        -- adjusted to 1
  699. X.ti -.5i
  700. Xzoo Ldg FIZ
  701. X.sp
  702. XArchive FIZ.zoo:
  703. XLength    CF  Size Now  Date      Time
  704. X--------  --- --------  --------- --------
  705. X      29   0%       29   2 Sep 88 17:32:42    0g  D xxx;1
  706. X      29   0%       29   2 Sep 88 17:47:14    0g    xxx;2
  707. X      29   0%       29   2 Sep 88 17:47:22    0g    xxx;3
  708. X      29   0%       29   2 Sep 88 17:47:30    0g    xxx;4
  709. X    3849  43%     2211   3 Feb 88 21:55:56    1g    fiz.1;1
  710. X--------  --- --------  --------- --------
  711. X    3965  41%     2327     5 files
  712. X------------
  713. XD: deleted file.
  714. XArchive generation limit is 3.
  715. X.CE
  716. X.DE
  717. X.P
  718. XLooking at the listing, note that the generation information says the
  719. Xarchive limit is three. Since the limit on the file "xxx" is zero, the
  720. Xarchive default is used. Since the limit on file "fiz.1" is one, there
  721. Xshould be only one version of the file kept. Let's test this.
  722. X.DS
  723. X.nf
  724. X.in +1i
  725. X.ti -1i
  726. XAdd the file twice more and view
  727. X.CW
  728. Xzoo a FIZ fiz.1
  729. XZoo:  fiz.1 --  (43%) replaced+
  730. X.sp
  731. Xzoo a FIZ fiz.1
  732. XZoo:  fiz.1 --  (43%) replaced+
  733. X.sp
  734. Xzoo Ldg FIZ
  735. X.sp
  736. XArchive FIZ.zoo:
  737. XLength    CF  Size Now  Date      Time
  738. X--------  --- --------  --------- --------
  739. X      29   0%       29   2 Sep 88 17:32:42    0g  D xxx;1
  740. X      29   0%       29   2 Sep 88 17:47:14    0g    xxx;2
  741. X      29   0%       29   2 Sep 88 17:47:22    0g    xxx;3
  742. X      29   0%       29   2 Sep 88 17:47:30    0g    xxx;4
  743. X    3849  43%     2211   3 Feb 88 21:55:56    1g  D fiz.1;1
  744. X    3849  43%     2211   3 Feb 88 21:55:56    1g  D fiz.1;2
  745. X    3849  43%     2211   3 Feb 88 21:55:56    1g    fiz.1;3
  746. X--------  --- --------  --------- --------
  747. X   11663  42%     6749     7 files
  748. X------------
  749. XD: deleted file.
  750. XArchive generation limit is 3.
  751. X.CE
  752. X.DE
  753. X.P
  754. XAfter adding the file several time, note that all generations other than
  755. Xthe most recent have been deleted. This is just what we wanted.
  756. XObviously if you wanted to keep a large number of generations of one
  757. Xfile you could set the archive limit higher and lower the limit of other
  758. Xfiles. This is useful, if not convenient.
  759. X.H 2 "Directory structures
  760. X.P
  761. X.IX "using subdirectories
  762. X.IX "subdirectories
  763. XMost operating systems have a multi-level structure of directories, and
  764. Xwhat are known as "subdirectories". \*z offers options about using these
  765. Xon the add command and the extract command. Normally any directory
  766. Xinformation you specify is preserved and available for use when the
  767. Xfiles are extracted. By default directory information is saved when a
  768. Xfile is added, but not used when it is extracted. These defaults seem to
  769. Xrepresent the most common cases.
  770. X.H 2 "Matching of filenames
  771. X.P
  772. X.IX "subdirectories and wildcards
  773. X.IX "wildcards and subdirectories
  774. XWhen \*z examines the filenames on the command line, an unintuitive name
  775. Xmatching paradigm is used. If the name contains a path delimiter, such
  776. X.IX "UNIX
  777. X.IX "MS-DOS
  778. Xas '/' in UNIX or '\\' in MS-DOS, only the name as entered is matched.
  779. X.DS
  780. X.nf
  781. XFor example:
  782. X.ti +.5i
  783. X.CW "zoo D arch src/subz.c
  784. X.DE
  785. XWill require an exact match before the file is deleted. However, if you
  786. Xjust specify a filename without a path delimiter, \fIall\fR files of
  787. Xthat name will be deleted, in any directory.
  788. X.DS
  789. X.nf
  790. XConsider this archive:
  791. X.sp
  792. X.CW
  793. XArchive FIZ.zoo:
  794. XLength    CF  Size Now  Date      Time
  795. X--------  --- --------  --------- --------
  796. X    3849  43%     2211   3 Feb 88 21:55:56     fiz.1
  797. X    6864  48%     3563   3 Feb 88 21:52:16     fiz.c
  798. X    3849  43%     2211   6 Sep 88 09:33:54     t1/fiz.1
  799. X--------  --- --------  --------- --------
  800. X   14562  45%     7985     3 files
  801. X.CE
  802. X.DE
  803. X.P
  804. X.IX "subdirectory name matching limitations
  805. XThere are two files, with different dates, named "fiz.1" and "t1/fiz.1". If
  806. Xyou use the delete command on "t1/fiz.1", only that file will be
  807. Xdeleted. If, however, you use the delete command with the name "fiz.1",
  808. Xboth files of that name will be deleted. Currently there is no way to
  809. Xdelete just the file with no path information. This limitation also
  810. Xapplies to other commands which require specifying names in the archive,
  811. Xsuch as list and extract.
  812. X.H 2 "Comments
  813. X.P
  814. X.IX "comments
  815. X\*z provides two type of comments, one on files to explain what each
  816. Xfile does, and one on the archive as a whole to explain what's in the
  817. Xarchive. The comment on the entire archive might be something like
  818. X"analize heat test data," while individual files might have comments
  819. Xlike "validate data routine," and "plot graphs on printer in graphics
  820. Xmode." The actual commands used to do this are discussed under adding
  821. Xand listing data sections.
  822. X.H 1 "Advanced command usage
  823. X.H 2 "adding data to an archive
  824. X.H 3 "Move updated files to an archive
  825. X.P
  826. X.IX "combining update and move
  827. X.IX "update and move, combining
  828. X.IX "move, combining and update
  829. XWhile the novice commands support the most common operations, there are
  830. Xseveral things which can only be done by the expert commands. One of
  831. Xthese is to update an archive and delete the added files. This is a
  832. Xcombination of the -update and -move commands.
  833. X.DS
  834. XThe expert command to do this is:
  835. X.ti +.5i
  836. X.CW "zoo aunM arch file1 file2
  837. X.DE
  838. X.P
  839. XNote that this is a combination of options, 'u' to update files which
  840. Xare newer than what's in the archive, 'n' for new files not in the
  841. Xarchive at all, and 'M' to move the added files to the archive. Files
  842. Xwhich are current in the archive will not be replaced, saving time (and
  843. Xif packing is not done, file space).
  844. X.H 3 "Packing as an option to add
  845. X.IX "packing while adding files
  846. X.IX "adding files and packing
  847. XNote that because this is an expert command, the archive is not packed,
  848. Xand any files replaced will still be in the archive. Adding the 'P'
  849. Xoption to the command causes the archive to be packed, and the unpacked
  850. Xarchive to be saved as 'file.bak'.
  851. X.DS
  852. XFor example:
  853. X.ti +.5i
  854. X.CW "zoo aunMP arch file1 file2
  855. X.DE
  856. Xwill pack the archive "arch.zoo" and leave the unpacked version as
  857. X"arch.bak".
  858. X.H 3 "Adding files from subdirectories
  859. X.P
  860. X.IX "adding files from subdirectories
  861. X.IX "subdirectories
  862. X.IX "subdirectories, adding files from
  863. XWhen files are in subdirectories, one thing you can do is to have a
  864. Xseparate archive for each subdirectory. Using \*z you may also have
  865. Xfiles from several subdirectories in anarchive. The following examples
  866. X.IX "MS-DOS
  867. X.IX "UNIX
  868. Xshown how this is done using MS-DOS or UNIX.
  869. X.DS
  870. X.nf
  871. XMS-DOS:
  872. X.ti +.5i
  873. X.CW "zoo a src\\\\* doc\\\\*
  874. X.sp
  875. XUNIX:
  876. X.ti +.5i
  877. X.CW "zoo a src/* doc/*
  878. X.DE
  879. XNote that the only difference is that the '\\' delimiter is used in
  880. XMS-DOS instead of the more common '/' used in UNIX. When you list an
  881. Xarchive created this way, the listing looks like this.
  882. X.DS
  883. X.nf
  884. XSubdirectory archive listing
  885. X.sp
  886. X.in +.5i
  887. X.CW
  888. XArchive FIZsdir.zoo:
  889. XLength    CF  Size Now  Date      Time
  890. X--------  --- --------  --------- --------
  891. X    3849  43%     2211   2 Sep 88 14:29:02     doc/fiz.1
  892. X    6864  48%     3563   2 Sep 88 14:29:02     src/fiz.c
  893. X--------  --- --------  --------- --------
  894. X   10713  46%     5774     2 files
  895. X.CE
  896. X.DE
  897. X.IX "subdirectory, extracting files from
  898. X.IX "extracting files from subdirectories
  899. XThere are a number of options for extracting these files, allowing you to
  900. Xuse or ignore the subdirectory information. If you want to create the
  901. Xarchive file without the directory names saved as part of the filename,
  902. Xthe ':' option will allow you to do this. One reason to do this is if
  903. Xyou are going to create an archive from a subdirectory and don't want to
  904. Xhave to change to the directory, or if you know the files will be
  905. Xextracted in another directory.
  906. X.DS
  907. X.nf
  908. XCreating an archive from a subdirectory:
  909. X.ti +.5i
  910. X.CW "zoo a: arch src/* src/*
  911. X.sp
  912. XGives listing:
  913. X.sp
  914. X.in +.5i
  915. X.CW
  916. XArchive FIZsdir.zoo:
  917. XLength    CF  Size Now  Date      Time
  918. X--------  --- --------  --------- --------
  919. X    3849  43%     2211   2 Sep 88 14:29:02     fiz.1
  920. X    6864  48%     3563   2 Sep 88 14:29:02     fiz.c
  921. X--------  --- --------  --------- --------
  922. X   10713  46%     5774     2 files
  923. X.CE
  924. X.DE
  925. X.H 3 "Getting the list of files from another source
  926. X.P
  927. X.IX "adding lists of files
  928. X.IX "standard input, reading filenames from
  929. X.IX "filesnames, reading from standard input
  930. XIf you're storing a large number of files in an archive, it may be
  931. Xinconvenient to type in the names of the files each time you work on the
  932. Xarchive. \*z allows you to take the files list from a file using the 'I'
  933. Xoption. This option may be applied to a number of commands, but
  934. Xtypically you use it with the 'a' command when creating a new archive,
  935. Xor the 'aun' command when updating an archive.
  936. X.DS
  937. X.nf
  938. XExample of file list for a file
  939. X.in +.5i
  940. X.CW "zoo aI arch < files.lst
  941. X.DE
  942. XWhere the file "files.lst" has been created with a list of the files
  943. Xyou're maintaining in this archive. Since this is a simple text file,
  944. Xyou can create it with an editor, and program, or by typing it in.
  945. X.P
  946. XIf you are on a system which supports pipes between commands, you can
  947. Xuse a program to generate a list and send it into \*z without saving it
  948. Xin a file. The commands "find" on UNIX and "scan" on MS-DOS are useful.
  949. X.DS
  950. X.IX "UNIX
  951. X.IX "MS-DOS
  952. X.nf
  953. X.in +.5i
  954. X.ti -.5i
  955. XFile list by pipes - UNIX:
  956. X.sp
  957. X.CW "find . -type f -mtime -4 -print | zoo aI thisweek
  958. X.sp
  959. X.ti -.5i
  960. XFile list by pipes - MS-DOS:
  961. X.sp
  962. X.CW "scan -R *.doc | zoo aI thisweek
  963. X.DE
  964. X.H 3 "Adding comments to the archive
  965. X.P
  966. X.IX "comments, adding
  967. XComments may be the entire archive or on individual files, or both. The
  968. Xconcept is discussed in detail in the "Other Concepts" section. Comments
  969. Xmay be added to a file at the time the file is added to the archive.
  970. XThis is done by the 'c' option. Here is an example of adding data to and
  971. Xarchive with a comment on each file, then adding a comment to the
  972. Xarchive as a whole.
  973. X.DS
  974. X.nf
  975. X.in +.5i
  976. X.CW
  977. Xzoo ac htanal *.for
  978. X.sp
  979. XZoo:  main.for    --  ( 0%) added
  980. X[Enter comment for main.for then type /END]
  981. XRead four heat treat test results files and prepare a graph on the
  982. Xdot matrix printer.
  983. X/end
  984. XZoo:  plot.for    --  ( 0%) added
  985. X[Enter comment for plot.for then type /END]
  986. XConvert X,Y data to plot points in 240dpi mode
  987. X/end
  988. XZoo:  screen.for  --  ( 0%) added
  989. X[Enter comment for screen.for then type /END]
  990. XFORTRAN version of curses, handle screen display and buffering.
  991. X/end
  992. XZoo:  strings.for --  ( 0%) added
  993. X[Enter comment for strings.for then type /END]
  994. XString manipulation package
  995. X/end
  996. X.sp 2
  997. Xzoo cA htanal
  998. X.sp
  999. X[Enter archive comment for htanal.zoo then type /END]
  1000. XHeat treat analysis program, prepare plot of results on the dot
  1001. Xmatrix printer
  1002. X/end
  1003. X.CE
  1004. X.DE
  1005. X.P
  1006. XThe first command adds all of the FORTRAN files to the archive, each
  1007. Xwith a comment. A comment is then added to the entire archive which
  1008. Xdescribes the function of the package. If you want to modify the
  1009. Xcomments already in the archive, either file or archive, you may use the
  1010. X'c' or 'cA' commands. The old comment will be listed, and you may either
  1011. Xtype a new comment or just press RETURN to keep the existing comment.
  1012. X.H 3 "Using generations
  1013. X.P
  1014. X.IX "generations
  1015. XGenerations are really useful as a way to keep back versions of
  1016. Xfiles handy in case you have to roll back, or fix a bug in an older
  1017. Xversion. Here's how it works.
  1018. X.P
  1019. X.IX "generation limit
  1020. XThere is a limit on the number of generations of a file which will be
  1021. Xkept, set on each individual file, and by default zero. This doesn't
  1022. Xmean that no generations are saved, it means that there's no limit.
  1023. XThere's also a limit on the whole archive, called the archive limit, and
  1024. Xthat's set by default to one. The maximum number of generations saved is
  1025. Xthe lower of the two limits for any given file.
  1026. X.P
  1027. XThere are three ways to set up an archive with generations. The simplest
  1028. Xis to leave the file limits at the default (zero) and set the archive
  1029. Xlimit. What you do is to create an archive using the 'a+' command to add
  1030. Xfiles and turn on generations. Then you use the 'glA=' command to set
  1031. Xthe limit on generations for the whole archive.
  1032. X.DS
  1033. XIt's easier than it sounds, here's an example:
  1034. X.sp
  1035. X.nf
  1036. X.in +.5i
  1037. X.CW
  1038. Xzoo a+ demo foo1
  1039. XZoo:  foo1 --  (67%) added
  1040. X.sp
  1041. Xzoo glA=3 demo
  1042. XArchive generation limit is now 3
  1043. X.CE
  1044. X.P
  1045. X.fi
  1046. X.ft R
  1047. XNow we have an archive with one generation of files, and no more than
  1048. Xthree generations of files to be saved for any file. After changing the
  1049. Xfile and adding new versions to the archive, here's what the archive
  1050. Xlooks like. Notice that deleted files haven't been removed, to make it
  1051. Xeasy to see what's happening.
  1052. X.sp 2
  1053. X.nf
  1054. X.CW
  1055. Xzoo Ldg demo
  1056. X.sp
  1057. XArchive demo.zoo:
  1058. XLength    CF  Size Now  Date      Time
  1059. X--------  --- --------  --------- --------
  1060. X    5074  67%     1690  18 Oct 88 10:36:52    0g  D foo1;1
  1061. X    5103  67%     1705  18 Oct 88 10:45:10    0g    foo1;2
  1062. X    5132  67%     1715  18 Oct 88 10:45:14    0g    foo1;3
  1063. X    5161  67%     1725  18 Oct 88 10:45:20    0g    foo1;4
  1064. X--------  --- --------  --------- --------
  1065. X   20470  67%     6835     4 files
  1066. X------------
  1067. XD: deleted file.
  1068. XArchive generation limit is 3.
  1069. X.CE
  1070. X.DE
  1071. X.P
  1072. XRemember that there are three ways to use generations. The second is if
  1073. XI have one file which does not require many generations. In that case I
  1074. Xwould set the archive generation limit to the value for all the rest of
  1075. Xthe files in the archive, and then set the limit on the one file which
  1076. Xneeds a special value.
  1077. X.DS
  1078. XIt would look like this:
  1079. X.nf
  1080. X.in +.5i
  1081. X.CW
  1082. Xzoo a+ demo foo1 foo2 foo3
  1083. XZoo:  foo1 --  (67%) added
  1084. XZoo:  foo2 --  (21%) added
  1085. XZoo:  foo3 --  (77%) added
  1086. X.sp
  1087. Xzoo glA=5 demo
  1088. XArchive generation limit is now 5
  1089. X.sp
  1090. Xzoo gl=2 demo foo2
  1091. XZoo: foo2;1          -- adjusted to 2
  1092. X.CE
  1093. X.DE
  1094. X.P
  1095. XThe final way to manage generations is to set the archive limit to zero,
  1096. Xallowing any number of versions as default, and then setting the limit
  1097. Xon each file individually. This is almost never needed, but it does
  1098. Xallow you to control the generation limit of each file completely.
  1099. X.H 2 "Listing the archive
  1100. X.H 3 "Generation information
  1101. X.P
  1102. X.IX "generations, listing
  1103. X.IX "listing generations
  1104. XThere are several options which will help you work with generations. The
  1105. Xsimplist is to use the 'L' command instead of the 'l'. Here is a simple
  1106. Xarchive, listed in two ways.
  1107. X.DS
  1108. X.nf
  1109. XListed with 'l':
  1110. X.sp
  1111. X.in +.5i
  1112. X.CW
  1113. XArchive FIZ.zoo:
  1114. XLength    CF  Size Now  Date      Time
  1115. X--------  --- --------  --------- --------
  1116. X    6864  48%     3563   3 Feb 88 21:52:16     fiz.c;1
  1117. X      29   0%       29  31 Aug 88 16:29:04     xxx;2
  1118. X--------  --- --------  --------- --------
  1119. X    6893  48%     3592     2 files
  1120. X.CE
  1121. X.DE
  1122. X.DS
  1123. X.nf
  1124. XListed with 'L':
  1125. X.sp
  1126. X.in +.5i
  1127. X.CW
  1128. XArchive FIZ.zoo:
  1129. XLength    CF  Size Now  Date      Time
  1130. X--------  --- --------  --------- --------
  1131. X    6864  48%     3563   3 Feb 88 21:52:16     fiz.c;1
  1132. X      29   0%       29  31 Aug 88 16:29:04     xxx;1
  1133. X      29   0%       29  31 Aug 88 16:29:04     xxx;2
  1134. X--------  --- --------  --------- --------
  1135. X    6922  48%     3621     3 files
  1136. X.CE
  1137. X.DE
  1138. X.P
  1139. X.IX "L command, list all generations
  1140. XNote that using 'l' only the most current version is displayed, while
  1141. Xif you use 'L' all non-deleted versions are listed.
  1142. X.P
  1143. X.IX "g option, list generation limits
  1144. X.IX "generation limits, listing
  1145. XIf you set limits on generations of individual files, then you will
  1146. Xwant to see those limits. The option to do this is 'g', display
  1147. Xgeneration info. Without that option the archive and file generation
  1148. Xlimits will not be displayed, although the 'L' command will display
  1149. Xundeleted versions.
  1150. X.DS
  1151. X.nf
  1152. XAn archive with generations, using 'L':
  1153. X.sp
  1154. X.in +.5i
  1155. X.CW
  1156. XArchive FIZ.zoo:
  1157. XLength    CF  Size Now  Date      Time
  1158. X--------  --- --------  --------- --------
  1159. X    6864  48%     3563   3 Feb 88 21:52:16     fiz.c;1
  1160. X      29   0%       29  31 Aug 88 16:29:04     xxx;1
  1161. X      29   0%       29  31 Aug 88 16:29:04     xxx;2
  1162. X--------  --- --------  --------- --------
  1163. X    6922  48%     3621     3 files
  1164. X.CE
  1165. X.DE
  1166. X.DS
  1167. X.nf
  1168. XAn archive with generations, using 'Lg':
  1169. X.sp
  1170. X.in +.5i
  1171. X.CW
  1172. XArchive FIZ.zoo:
  1173. XLength    CF  Size Now  Date      Time
  1174. X--------  --- --------  --------- --------
  1175. X    6864  48%     3563   3 Feb 88 21:52:16    0g   fiz.c;1
  1176. X      29   0%       29  31 Aug 88 16:29:04    0g   xxx;1
  1177. X      29   0%       29  31 Aug 88 16:29:04    0g   xxx;2
  1178. X--------  --- --------  --------- --------
  1179. X    6922  48%     3621     3 files
  1180. X------------
  1181. XArchive generation limit is 3.
  1182. X.CE
  1183. X.DE
  1184. X.H 3 "Listing deleted files
  1185. X.P
  1186. X.IX "listing deleted files
  1187. X.IX "deleted files, listing
  1188. X.IX "d option, listing deleted files
  1189. XIf you have modified an archive with the expert commands, and have not
  1190. Xyet packed the archive to remove deleted files, you may view those files
  1191. Xusing the 'd' option to the 'l' or 'L' commands.
  1192. X.DS
  1193. X.nf
  1194. XThis is what the listing looks like with 'L':
  1195. X.sp
  1196. X.in +.5i
  1197. X.CW
  1198. XArchive FIZsim.zoo:
  1199. XLength    CF  Size Now  Date      Time
  1200. X--------  --- --------  --------- --------
  1201. X    6864  48%     3563   3 Feb 88 21:52:16     fiz.c
  1202. X    3849  43%     2211   3 Feb 88 21:55:56     fiz.1
  1203. X--------  --- --------  --------- --------
  1204. X   10713  46%     5774     2 files
  1205. X------------
  1206. XThere is 1 deleted file.
  1207. X.CE
  1208. X.DE
  1209. X.DS
  1210. X.nf
  1211. XAnd this listing used 'Ld':
  1212. X.sp
  1213. X.in +.5i
  1214. X.CW
  1215. XArchive FIZsim.zoo:
  1216. XLength    CF  Size Now  Date      Time
  1217. X--------  --- --------  --------- --------
  1218. X    3849  43%     2211   3 Feb 88 21:55:56    D fiz.1
  1219. X    6864  48%     3563   3 Feb 88 21:52:16      fiz.c
  1220. X    3849  43%     2211   3 Feb 88 21:55:56      fiz.1
  1221. X--------  --- --------  --------- --------
  1222. X   14562  45%     7985     3 files
  1223. X------------
  1224. XD: deleted file.
  1225. X.CE
  1226. X.DE
  1227. X.P
  1228. XNote that the listing without the 'd' option simply informs you of the
  1229. Xnumber of selected files, while the listing with 'd' shows you the file
  1230. Xinformation just as it does the undeleted files.
  1231. X.H 3 "Listing multiple archives
  1232. X.P
  1233. X.IX "listing multiple archives
  1234. X.IX "L command, listing multiple archives
  1235. X.IX "multiple archives, listing
  1236. XThe command 'L' allows more than one archive to be listed. In fact the
  1237. Xgeneral form allows for any number of archives to be specified, each
  1238. Xaffected by the options of the 'L' command. The restriction is that you
  1239. Xcan't just list some files, you get a listing of all undeleted files in
  1240. Xall archives.
  1241. X.DS
  1242. X.nf
  1243. XCommand "zoo L FIZ FIZsim":
  1244. X.sp
  1245. X.in +.5i
  1246. X.CW
  1247. XArchive FIZ.zoo:
  1248. XLength    CF  Size Now  Date      Time
  1249. X--------  --- --------  --------- --------
  1250. X    6864  48%     3563   3 Feb 88 21:52:16     fiz.c;1
  1251. X      29   0%       29  31 Aug 88 16:29:04     xxx;1
  1252. X      29   0%       29  31 Aug 88 16:29:04     xxx;2
  1253. X--------  --- --------  --------- --------
  1254. X    6922  48%     3621     3 files
  1255. X.sp
  1256. XArchive FIZsim.zoo:
  1257. XLength    CF  Size Now  Date      Time
  1258. X--------  --- --------  --------- --------
  1259. X    6864  48%     3563   3 Feb 88 21:52:16     fiz.c
  1260. X    3849  43%     2211   3 Feb 88 21:55:56     fiz.1
  1261. X--------  --- --------  --------- --------
  1262. X   10713  46%     5774     2 files
  1263. X------------
  1264. XThere is 1 deleted file.
  1265. X.CE
  1266. X.DE
  1267. X.H 3 "Creating a simple archive database file
  1268. X.P
  1269. X.IX "creating archive content listings
  1270. X.IX "content listsings, creating
  1271. X.IX "database input files, creating
  1272. XThe 'a' and 'q' options may be used to create a database file which may
  1273. Xbe used as input to your favorite database program, or just sorted and
  1274. Xviewed on the screen or paper.
  1275. X.DS
  1276. X.nf
  1277. XCreating a simple files list from several archives:
  1278. X.sp
  1279. X.CW
  1280. X.ti +.5i
  1281. Xzoo Laq FIZ FIZsim
  1282. X.sp
  1283. X.in +.5i
  1284. X    6864  48%     3563   3 Feb 88 21:52:16     FIZ.zoo fiz.c;1
  1285. X      29   0%       29  31 Aug 88 16:29:04     FIZ.zoo xxx;1
  1286. X      29   0%       29  31 Aug 88 16:29:04     FIZ.zoo xxx;2
  1287. X    6864  48%     3563   3 Feb 88 21:52:16     FIZsim.zoo fiz.c
  1288. X    3849  43%     2211   3 Feb 88 21:55:56     FIZsim.zoo fiz.1
  1289. X.CE
  1290. X.DE
  1291. Xthe 'a' option causes the name of the archive to be listed on each line,
  1292. Xinstead at the start of the listing. The 'q' option suppresses the
  1293. Xheadings and summaries, leaving just one line per file.
  1294. X.P
  1295. XThe eighth field is the archive name, and the ninth is the file name.
  1296. XThe file may be sorted on either of those, or the size, date modified,
  1297. Xetc. Any or all of those fields may be used a indices for a real
  1298. Xdatabase program, if the number of files and archives is large enough to
  1299. Xwarrant that.
  1300. X.H 3 "Listing comments
  1301. X.P
  1302. X.IX "listing comments
  1303. X.IX "comments, listing
  1304. XAn archive is normally listed using the 'l' command, and only the actual
  1305. Xcontents are shown. If the 'v' option is added, or if 'v' is used as a
  1306. Xcommand, the comment at the start of the archive which describes the
  1307. Xpackage as a whole is displayed. If the 'V' option or command is used,
  1308. Xthe comments on individual files are shown as well. Here are examples of
  1309. Xlisting an archive, first with just the descriptive archive comment, and
  1310. Xthen with the comments on the individual files as well.
  1311. X.sp
  1312. X.DS
  1313. X.nf
  1314. X.CW
  1315. X.in +.5i
  1316. Xzoo v htanal
  1317. X.sp
  1318. XArchive htanal.zoo:
  1319. X>> Heat treat analysis program, prepare plot of results
  1320. XLength    CF  Size Now  Date      Time
  1321. X--------  --- --------  --------- --------
  1322. X      29   0%       29  17 Oct 88 17:23:24   C main.for
  1323. X      29   0%       29  17 Oct 88 17:23:24   C plot.for
  1324. X      29   0%       29  17 Oct 88 17:23:24   C screen.for
  1325. X      29   0%       29  17 Oct 88 17:23:24   C strings.for
  1326. X--------  --- --------  --------- --------
  1327. X     116   0%      116     4 files
  1328. X------------
  1329. XC: file has attached comment.
  1330. X.CE
  1331. X.DE
  1332. X.sp 2
  1333. X.DS
  1334. X.nf
  1335. X.CW
  1336. X.in +.5i
  1337. Xzoo V htanal
  1338. X.sp
  1339. XArchive htanal.zoo:
  1340. X>> Heat treat analysis program, prepare plot of results
  1341. XLength    CF  Size Now  Date      Time
  1342. X--------  --- --------  --------- --------
  1343. X      29   0%       29  17 Oct 88 17:23:24   C main.for
  1344. X |Read four heat treat test results files and prepare a graph on the
  1345. X |dot matrix printer.
  1346. X      29   0%       29  17 Oct 88 17:23:24   C plot.for
  1347. X |Convert X,Y data to plot points in 240dpi mode
  1348. X      29   0%       29  17 Oct 88 17:23:24   C screen.for
  1349. X |FORTRAN version of curses, handle screen display and buffering.
  1350. X      29   0%       29  17 Oct 88 17:23:24   C strings.for
  1351. X |String manipulation package
  1352. X--------  --- --------  --------- --------
  1353. X     116   0%      116     4 files
  1354. X------------
  1355. X.CE
  1356. X.DE
  1357. X.H 2 "Extracting files
  1358. X.H 3 "Extracting to a subdirectory
  1359. X.P
  1360. X.IX "extracting to a subdirectory
  1361. X.IX "subdirectory, extracting to
  1362. X.IX "/ option, extract to subdirectory
  1363. XSince the \*z default is to save directory information, you may want to
  1364. Xuse that information at some time. The default is to extract all files
  1365. Xinto the current directory. If the option '/' is added to the expert
  1366. Xextract command, the files will be extracted into their original
  1367. Xdirectories, \fIif and only if the directories exist\fR. If you want to
  1368. Xcreate the directories, the '//' option will do that, creating any
  1369. Xneeded directories as the files are extracted.
  1370. X.DS
  1371. X.nf
  1372. XConsider the archive:
  1373. X.sp
  1374. X.in +.5i
  1375. X.CW
  1376. XArchive myarch.zoo:
  1377. XLength    CF  Size Now  Date      Time
  1378. X--------  --- --------  --------- --------
  1379. X    3849  43%     2211   2 Sep 88 14:29:02     doc/fiz.1
  1380. X    6864  48%     3563   2 Sep 88 14:29:02     src/fiz.c
  1381. X--------  --- --------  --------- --------
  1382. X   10713  46%     5774     2 files
  1383. X.CE
  1384. X.sp
  1385. X.ti -.5i
  1386. XAnd the command:
  1387. X.CW zoo x myarch
  1388. X.DE
  1389. X.P
  1390. XThe files "fiz.1" and "fiz.c" will be extracteded in the current directory.
  1391. XTo extract the files in their original directories, the option '//' may
  1392. Xbe used.
  1393. X.DS
  1394. X.nf
  1395. XCreating directories and extracting:
  1396. X.sp
  1397. X.in +.5i
  1398. X.CW "zoo x// myarch
  1399. X.DE
  1400. X.P
  1401. XFinally the '/' option extractes files into their original directories if
  1402. Xthe directories exist. In the case where some directories exist and
  1403. Xothers don't only the files for which you have directories will be
  1404. Xextracted, and you will get a warning for each file not restored.
  1405. X.H 3 "Extracting quietly
  1406. X.P
  1407. X.IX "q command, quiet operation
  1408. X.IX "quiet extract
  1409. XThe 'q' command may be used with the 'x' command to extract files
  1410. Xwithout a message for each file. Although most people want a message to
  1411. Xassure them that the file was extracted, this may be useful if the
  1412. Xextract affects a number of files and only the error messages (if any)
  1413. Xare needed.
  1414. X.H 3 "Using wildcards for extract
  1415. X.P
  1416. X.IX "extract using wildcards
  1417. X.IX "wildcards, extract using
  1418. XIn general wildcards may be used to extract files as well as save them.
  1419. XHowever, on some systems where wildcard names are expanded before the
  1420. Xcommand is executed, it will be necessary to use the correct escape
  1421. Xsequence to prevent the name from being changed.
  1422. X.DS
  1423. X.IX "UNIX
  1424. X.IX "MS-DOS
  1425. X.nf
  1426. XExtract on MS-DOS
  1427. X.sp
  1428. X.ti +.5i
  1429. X.CW "zoo x arch *.doc
  1430. X.sp
  1431. XExtract on UNIX
  1432. X.sp
  1433. X.ti +.5i
  1434. X.CW "zoo x arch "*.doc"
  1435. X.DE
  1436. XSince the UNIX system expands the wildcard names for you, zoo is a
  1437. Xspecial case, and you must quote the name. Quoting is not needed on
  1438. XMS-DOS and VMS.
  1439. X.H 3 "Extracting deleted files
  1440. X.P
  1441. XAlthough careful use of generations will avoid the need to recover the
  1442. Xdeleted versions of files, you may at some time have an archive which
  1443. Xcontains a deleted file, and wish to recover it. Consider the archive
  1444. Xbelow.
  1445. X.DS
  1446. X.nf
  1447. XAn archive with a deleted file:
  1448. X.sp
  1449. X.in +.5i
  1450. X.CW
  1451. Xzoo ld FIZ
  1452. X.sp
  1453. XArchive FIZ.zoo:
  1454. XLength    CF  Size Now  Date      Time
  1455. X--------  --- --------  --------- --------
  1456. X    3849  43%     2211   3 Feb 88 21:55:56      fiz.1
  1457. X    6864  48%     3563   3 Feb 88 16:21:36    D fiz.c
  1458. X    6864  48%     3563   3 Feb 88 21:52:16      fiz.c
  1459. X    3849  43%     2211   6 Sep 88 09:33:54      t1/fiz.1
  1460. X--------  --- --------  --------- --------
  1461. X   21426  46%    11548     4 files
  1462. X------------
  1463. XD: deleted file.
  1464. X.CE
  1465. X.DE
  1466. X.P
  1467. XTo make the situation worse, there is also an undeleted file by the same
  1468. Xname. What you need to do is to recover the the older version of the
  1469. Xfile which has been deleted. Note that if you had used the novice
  1470. Xversion of the add command it would have packed the archive and the
  1471. Xdeleted file would be gone. I could be found in the "FIZ.bak" copy of
  1472. Xthe archive, however.
  1473. X.P
  1474. X.IX "extracting deleted files
  1475. X.IX "d option, extracting deleted files
  1476. XThe extract command may be used with the 'd' option, which allows \*z to
  1477. Xextract deleted files as well as active files, or the 'dd' option, which
  1478. Xforces extraction of \fIonly\fR deleted files. Since you have an active
  1479. Xfile of the same name, you will want the 'dd' option. Don't forget to
  1480. Xdelete whatever version of the file is in your current directory, or you
  1481. Xwill need to use still more options.
  1482. X.DS
  1483. X.nf
  1484. XExtracting the deleted file:
  1485. X.sp
  1486. X.in +.5i
  1487. X.CW
  1488. Xzoo xdd FIZ fiz.c
  1489. XZoo:  fiz.c          -- extracted
  1490. X.CE
  1491. X.DE
  1492. XThe message indicates that the deleted version of the file has been
  1493. Xrecovered. Note that the generations feature is intended to eliminate
  1494. Xthe need to do this type of operation.
  1495. X.ne 8
  1496. X.H 3 "Extract and overwrite
  1497. X.ce
  1498. X"You are lost in a twisty maze of options, all alike"
  1499. X.P
  1500. X.IX "extracting with overwrite
  1501. X.IX "overwrite files on extract
  1502. X.IX "O option, overwrite existing files
  1503. XThere are three options which allow you to extract files from an archive
  1504. Xwithout deleting all of the files in your current directory structure.
  1505. XThese are generally useful only when the existing file have become
  1506. Xdamaged in some way, such as trying to make changes to source or
  1507. Xdocumentation with a new editor, etc.
  1508. X.P
  1509. XThe 'O' option allows \*z to overwrite existing files. Without this
  1510. Xoption \*z will ask permission to overwrite an existing file before
  1511. Xreplacing it. While this is useful as a safety measure, there are times
  1512. Xwhen you will want to "just do it." When the 'O' option is specified,
  1513. Xexisting file will be replaced unless they are newer than the file in
  1514. Xthe archive or read-only. Using the option "OO" instead of 'O' allows
  1515. X\*z to overwrite "read-only" files. If you want to replace existing
  1516. Xfiles you must use one of these two options.
  1517. X.P
  1518. X.IX "extracting read-only files
  1519. X.IX "read-only files, extracting
  1520. X.IX "S option, overwrite read-only files
  1521. X.IX "overwriting newer files on extract
  1522. XEven when using the 'O' option, an existing file will not be overwritten
  1523. Xif it is newer than the version in the archive. This would happen if you
  1524. Xextracted a file, changed it, and then found that the changes were
  1525. Xincorrect. To allow \*z to replace a newer files, you need the option
  1526. X'S', which specifies that a superseded file will be extracted. The
  1527. X'SOO" combination of options will cause \*z to extract any file
  1528. Xspecified unconditionally.
  1529. X.H 3 "Extracting generations
  1530. X.P
  1531. X.IX "generations, extracting
  1532. X.IX "extracting generations
  1533. XIf you have an archive with previous generations, at some time you will
  1534. Xwant to extract a generation older than the most current. To do this
  1535. Xyou specify the generation number as part of the filename in the 'x'
  1536. Xcommand.
  1537. X.DS
  1538. XLet's look at the listing of an archive with generations, and then the
  1539. Xcommand to extract an old generation:
  1540. X.sp
  1541. X.nf
  1542. X.CW
  1543. X.in +.5i
  1544. Xzoo Ldg demo
  1545. X.sp
  1546. XArchive demo.zoo:
  1547. XLength    CF  Size Now  Date      Time
  1548. X--------  --- --------  --------- --------
  1549. X    5074  67%     1690  18 Oct 88 10:36:52    0g  D foo1;1
  1550. X    5103  67%     1705  18 Oct 88 10:45:10    0g    foo1;2
  1551. X    5132  67%     1715  18 Oct 88 10:45:14    0g    foo1;3
  1552. X    5161  67%     1725  18 Oct 88 10:45:20    0g    foo1;4
  1553. X--------  --- --------  --------- --------
  1554. X   20470  67%     6835     4 files
  1555. X------------
  1556. XD: deleted file.
  1557. XArchive generation limit is 3.
  1558. X.sp 2
  1559. Xzoo x demo foo1;2
  1560. XZoo: foo1;2         -- extracted
  1561. X.CE
  1562. X.DE
  1563. X.P
  1564. X.IX "generation delimiters
  1565. XNotice that the characters ';' or ':' may be used to separate the
  1566. Xfilename from the generation. The ';' is customary in VMS, while it's
  1567. Xinconvenient in UNIX, where the ':' may be used. At this time there's no
  1568. Xway to bypass the generation character and access a file with either
  1569. Xcharacter in its name.
  1570. X.OP
  1571. X.ls 1
  1572. X.H 1 Index
  1573. X.so uguide.idx
  1574. X.de PX        \" no offset on these
  1575. X..
  1576. X.TC
  1577. SHAR_EOF
  1578. fi
  1579. exit 0
  1580. #    End of shell archive
  1581.  
  1582.